home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
EnigmA Amiga Run 1997 May
/
EnigmA AMIGA RUN 18 (1997)(G.R. Edizioni)(IT)[!][issue 1997-05][EAR-CD II].iso
/
ghost
/
gs403src_amiga.lha
/
gs4.03
/
int.mak.in
< prev
next >
Wrap
Text File
|
1997-03-16
|
44KB
|
1,201 lines
# Copyright (C) 1995, 1996 Aladdin Enterprises. All rights reserved.
#
# This file is part of Aladdin Ghostscript.
#
# Aladdin Ghostscript is distributed with NO WARRANTY OF ANY KIND. No author
# or distributor accepts any responsibility for the consequences of using it,
# or for whether it serves any particular purpose or works at all, unless he
# or she says so in writing. Refer to the Aladdin Ghostscript Free Public
# License (the "License") for full details.
#
# Every copy of Aladdin Ghostscript must include a copy of the License,
# normally in a plain ASCII text file named PUBLIC. The License grants you
# the right to copy, modify and redistribute Aladdin Ghostscript, but only
# under certain conditions described in the License. Among other things, the
# License requires that the copyright notice and this notice be preserved on
# all copies.
# (Platform-independent) makefile for language interpreters.
# See the end of gs.mak for where this fits into the build process.
# Define the name of this makefile.
INT_MAK=int.mak
# ======================== Interpreter support ======================== #
# This is support code for all interpreters, not just PostScript and PDF.
# It knows about the PostScript data types, but isn't supposed to
# depend on anything outside itself.
errors_h=errors.h
idebug_h=idebug.h
idict_h=idict.h
igc_h=igc.h
igcstr_h=igcstr.h
iname_h=iname.h
inamedef_h=inamedef.h $(gconfigv_h) $(iname_h)
ipacked_h=ipacked.h
iref_h=iref.h
isave_h=isave.h
isstate_h=isstate.h
istruct_h=istruct.h $(gsstruct_h)
ivmspace_h=ivmspace.h
opdef_h=opdef.h
# Nested include files
ghost_h=ghost.h $(gx_h) $(iref_h)
imemory_h=imemory.h $(gsalloc_h) $(ivmspace_h)
ialloc_h=ialloc.h $(imemory_h)
iastruct_h=iastruct.h $(gxobj_h) $(ialloc_h)
iastate_h=iastate.h $(gxalloc_h) $(ialloc_h) $(istruct_h)
store_h=store.h $(ialloc_h)
GH=$(AK) $(ghost_h)
isupport1_=ialloc.$(OBJ) igc.$(OBJ) igcref.$(OBJ) igcstr.$(OBJ)
isupport2_=ilocate.$(OBJ) iname.$(OBJ) isave.$(OBJ)
isupport_=$(isupport1_) $(isupport2_)
isupport.dev: $(INT_MAK) $(ECHOGS_XE) $(isupport_)
$(SETMOD) isupport $(isupport1_)
$(ADDMOD) isupport -obj $(isupport2_)
ialloc.$(OBJ): ialloc.c $(AK) $(gx_h) \
$(errors_h) $(gsstruct_h) $(gxarith_h) \
$(iastate_h) $(iref_h) $(ivmspace_h) $(store_h)
# igc.c, igcref.c, and igcstr.c should really be in the dpsand2 list,
# but since all the GC enumeration and relocation routines refer to them,
# it's too hard to separate them out from the Level 1 base.
igc.$(OBJ): igc.c $(GH) \
$(errors_h) $(gsexit_h) $(gsmdebug_h) $(gsstruct_h) $(gsutil_h) \
$(iastate_h) $(idict_h) $(igc_h) $(igcstr_h) $(inamedef_h) \
$(ipacked_h) $(isave_h) $(isstate_h) $(istruct_h) $(opdef_h) $(store_h)
igcref.$(OBJ): igcref.c $(GH) \
$(gsexit_h) $(iastate_h) $(idebug_h) $(igc_h) $(iname_h) $(ipacked_h)
igcstr.$(OBJ): igcstr.c $(GH) \
$(gsmdebug_h) $(gsstruct_h) $(iastate_h) $(igcstr_h)
ilocate.$(OBJ): ilocate.c $(GH) $(memory__h) \
$(errors_h) $(gsexit_h) $(gsstruct_h) \
$(iastate_h) $(igc_h) $(igcstr_h) $(iname_h) $(ipacked_h) $(isstate_h) $(ivmspace_h) \
$(store_h)
iname.$(OBJ): iname.c $(GH) $(memory__h) $(string__h) \
$(gsstruct_h) $(errors_h) $(imemory_h) $(inamedef_h) $(isave_h) $(store_h)
isave.$(OBJ): isave.c $(GH) \
$(errors_h) $(gsexit_h) $(gsstruct_h) $(gsutil_h) \
$(iastate_h) $(inamedef_h) $(isave_h) $(isstate_h) $(ivmspace_h) \
$(ipacked_h) $(store_h)
### Include files
idparam_h=idparam.h
ilevel_h=ilevel.h
iparam_h=iparam.h $(gsparam_h)
istack_h=istack.h
iutil_h=iutil.h
opcheck_h=opcheck.h
opextern_h=opextern.h
# Nested include files
dstack_h=dstack.h $(istack_h)
estack_h=estack.h $(istack_h)
ostack_h=ostack.h $(istack_h)
oper_h=oper.h $(iutil_h) $(opcheck_h) $(opdef_h) $(opextern_h) $(ostack_h)
idebug.$(OBJ): idebug.c $(GH) \
$(ialloc_h) $(idebug_h) $(idict_h) $(iname_h) $(istack_h) $(iutil_h) $(ivmspace_h) \
$(ostack_h) $(opdef_h) $(ipacked_h) $(store_h)
idict.$(OBJ): idict.c $(GH) $(errors_h) \
$(ialloc_h) $(idebug_h) $(ivmspace_h) $(inamedef_h) $(ipacked_h) \
$(isave_h) $(store_h) $(iutil_h) $(idict_h) $(dstack_h)
idparam.$(OBJ): idparam.c $(GH) $(errors_h) \
$(gsmatrix_h) $(gsuid_h) \
$(idict_h) $(idparam_h) $(ilevel_h) $(imemory_h) $(iname_h) $(iutil_h) \
$(oper_h) $(store_h)
iparam.$(OBJ): iparam.c $(GH) \
$(ialloc_h) $(idict_h) $(iname_h) $(imemory_h) $(iparam_h) $(istack_h) $(iutil_h) $(ivmspace_h) \
$(opcheck_h) $(store_h)
istack.$(OBJ): istack.c $(GH) $(memory__h) \
$(errors_h) $(gsstruct_h) $(gsutil_h) \
$(ialloc_h) $(istack_h) $(istruct_h) $(iutil_h) $(ivmspace_h) $(store_h)
iutil.$(OBJ): iutil.c $(GH) $(math__h) $(memory__h) $(string__h) \
$(errors_h) $(idict_h) $(imemory_h) $(iutil_h) $(ivmspace_h) \
$(iname_h) $(ipacked_h) $(store_h) \
$(gsmatrix_h) $(gsutil_h)
# ======================== PostScript Level 1 ======================== #
###### Include files
files_h=files.h
fname_h=fname.h
ichar_h=ichar.h
icharout_h=icharout.h
icolor_h=icolor.h
icsmap_h=icsmap.h
ifont_h=ifont.h $(gsstruct_h)
iimage_h=iimage.h
imain_h=imain.h $(gsexit_h)
imainarg_h=imainarg.h
iminst_h=iminst.h $(imain_h)
interp_h=interp.h
iparray_h=iparray.h
iscannum_h=iscannum.h
istream_h=istream.h
main_h=main.h $(iminst_h)
overlay_h=overlay.h
sa85x_h=sa85x.h
sbtx_h=sbtx.h
sbwbs_h=sbwbs.h
scanchar_h=scanchar.h
sdct_h=sdct.h
sfilter_h=sfilter.h $(gstypes_h)
shcgen_h=shcgen.h
sjpeg_h=sjpeg.h
smtf_h=smtf.h
sstring_h=sstring.h
# Nested include files
bfont_h=bfont.h $(ifont_h)
ifilter_h=ifilter.h $(istream_h) $(ivmspace_h)
igstate_h=igstate.h $(gsstate_h) $(gxstate_h) $(istruct_h)
iscan_h=iscan.h $(sa85x_h) $(sstring_h)
sbhc_h=sbhc.h $(shc_h)
# Include files for optional features
ibnum_h=ibnum.h
### Initialization and scanning
iconfig=iconfig$(CONFIG)
$(iconfig).$(OBJ): iconf.c $(stdio__h) \
$(gconfig_h) $(gscdefs_h) $(gsmemory_h) \
$(files_h) $(imain_h) $(iref_h) $(ivmspace_h) $(opdef_h) $(stream_h)
$(RM_) gconfig.h
$(RM_) $(iconfig).c
$(CP_) $(gconfig_h) gconfig.h
$(CP_) $(srcdir)/iconf.c $(iconfig).c
$(CCC) -I. -I$(srcdir) $(iconfig).c
$(RM_) gconfig.h
$(RM_) $(iconfig).c
iinit.$(OBJ): iinit.c $(GH) \
$(gscdefs_h) $(gsexit_h) $(gsstruct_h) \
$(ialloc_h) $(idict_h) $(dstack_h) $(errors_h) \
$(ilevel_h) $(iname_h) $(interp_h) $(opdef_h) \
$(ipacked_h) $(iparray_h) $(iutil_h) $(ivmspace_h) $(store_h)
iscan.$(OBJ): iscan.c $(GH) $(ctype__h) \
$(ialloc_h) $(idict_h) $(dstack_h) $(errors_h) $(files_h) \
$(ilevel_h) $(iutil_h) $(iscan_h) $(iscannum_h) $(istruct_h) $(ivmspace_h) \
$(iname_h) $(ipacked_h) $(iparray_h) $(istream_h) $(ostack_h) $(store_h) \
$(stream_h) $(strimpl_h) $(sfilter_h) $(scanchar_h)
iscannum.$(OBJ): iscannum.c $(GH) $(math__h) \
$(errors_h) $(iscannum_h) $(scanchar_h) $(store_h) $(stream_h)
iscantab.$(OBJ): iscantab.c $(AK) \
$(stdpre_h) $(scommon_h) $(scanchar_h)
### Streams
# Define which implementation of files we are using (sfile or sfileno).
# This can be overridden on the `make' command line.
#sfile_impl=sfileno
sfile_impl=sfile
sfile.$(OBJ): sfile.c $(AK) $(stdio__h) $(memory__h) \
$(gdebug_h) $(gpcheck_h) $(stream_h) $(strimpl_h)
sfileno.$(OBJ): sfileno.c $(AK) $(stdio__h) $(errno__h) $(memory__h) \
$(gdebug_h) $(gpcheck_h) $(stream_h) $(strimpl_h)
sfilter1.$(OBJ): sfilter1.c $(AK) $(stdio__h) $(memory__h) \
$(sfilter_h) $(strimpl_h)
sstring.$(OBJ): sstring.c $(AK) $(stdio__h) $(memory__h) $(string__h) \
$(scanchar_h) $(sstring_h) $(strimpl_h)
###### Operators
OP=$(GH) $(errors_h) $(oper_h)
### Non-graphics operators
zarith.$(OBJ): zarith.c $(OP) $(math__h) $(store_h)
zarray.$(OBJ): zarray.c $(OP) $(ialloc_h) $(ipacked_h) $(store_h)
zcontrol.$(OBJ): zcontrol.c $(OP) \
$(estack_h) $(ipacked_h) $(iutil_h) $(store_h)
zdict.$(OBJ): zdict.c $(OP) \
$(dstack_h) $(idict_h) $(ilevel_h) $(iname_h) $(ipacked_h) $(ivmspace_h) \
$(store_h)
zfile.$(OBJ): zfile.c $(OP) $(stat__h) $(gp_h) \
$(gsstruct_h) $(gxiodev_h) \
$(ialloc_h) $(estack_h) $(files_h) $(fname_h) $(ilevel_h) $(interp_h) $(iutil_h) \
$(isave_h) $(main_h) $(sfilter_h) $(stream_h) $(strimpl_h) $(store_h)
zfname.$(OBJ): zfname.c $(OP) \
$(fname_h) $(gxiodev_h) $(ialloc_h) $(stream_h)
zfileio.$(OBJ): zfileio.c $(OP) $(gp_h) \
$(files_h) $(ifilter_h) $(store_h) $(stream_h) $(strimpl_h) \
$(gsmatrix_h) $(gxdevice_h) $(gxdevmem_h)
zfilter.$(OBJ): zfilter.c $(OP) \
$(gsstruct_h) $(files_h) $(ialloc_h) $(idict_h) $(idparam_h) $(ifilter_h) \
$(sfilter_h) $(srlx_h) $(sstring_h) $(stream_h) $(strimpl_h)
zfproc.$(OBJ): zfproc.c $(GH) $(errors_h) $(oper_h) \
$(estack_h) $(files_h) $(gsstruct_h) $(ialloc_h) $(ifilter_h) $(istruct_h) \
$(store_h) $(stream_h) $(strimpl_h)
zgeneric.$(OBJ): zgeneric.c $(OP) \
$(idict_h) $(estack_h) $(ivmspace_h) $(iname_h) $(ipacked_h) $(store_h)
ziodev.$(OBJ): ziodev.c $(OP) $(memory__h) $(string__h) $(gp_h) $(gpcheck_h) \
$(gsstruct_h) $(gxiodev_h) \
$(files_h) $(ialloc_h) $(ivmspace_h) $(store_h) $(stream_h)
zmath.$(OBJ): zmath.c $(OP) $(math__h) $(gxfarith_h) $(store_h)
zmisc.$(OBJ): zmisc.c $(OP) $(gscdefs_h) $(gp_h) \
$(errno__h) $(memory__h) $(string__h) \
$(ialloc_h) $(idict_h) $(dstack_h) $(iname_h) $(ivmspace_h) $(ipacked_h) $(store_h)
zpacked.$(OBJ): zpacked.c $(OP) \
$(ialloc_h) $(idict_h) $(ivmspace_h) $(iname_h) $(ipacked_h) $(iparray_h) \
$(istack_h) $(store_h)
zrelbit.$(OBJ): zrelbit.c $(OP) $(gsutil_h) $(store_h) $(idict_h)
zstack.$(OBJ): zstack.c $(OP) $(ialloc_h) $(istack_h) $(store_h)
zstring.$(OBJ): zstring.c $(OP) $(gsutil_h) \
$(ialloc_h) $(iname_h) $(ivmspace_h) $(store_h)
zsysvm.$(OBJ): zsysvm.c $(OP)
ztoken.$(OBJ): ztoken.c $(OP) \
$(estack_h) $(files_h) $(gsstruct_h) $(iscan_h) \
$(sfilter_h) $(store_h) $(stream_h) $(strimpl_h)
ztype.$(OBJ): ztype.c $(OP) $(math__h) \
$(dstack_h) $(idict_h) $(imemory_h) $(iname_h) \
$(iscan_h) $(iutil_h) $(sfilter_h) $(store_h) $(stream_h) $(strimpl_h)
# Note that zusparam includes both Level 1 and Level 2 operators.
zusparam.$(OBJ): zusparam.c $(OP) \
$(gscdefs_h) $(gsfont_h) $(gsstruct_h) $(gsutil_h) $(gxht_h) \
$(ialloc_h) $(idict_h) $(idparam_h) $(iparam_h) $(dstack_h) $(estack_h) \
$(iname_h) $(iutil2_h) $(store_h)
zvmem.$(OBJ): zvmem.c $(OP) \
$(ialloc_h) $(idict_h) $(dstack_h) $(estack_h) $(isave_h) $(igstate_h) $(store_h) \
$(gsmatrix_h) $(gsstate_h) $(gsstruct_h)
### Graphics operators
zchar.$(OBJ): zchar.c $(OP) \
$(gsstruct_h) $(gxarith_h) $(gxfixed_h) $(gxmatrix_h) \
$(gschar_h) $(gxdevice_h) $(gxfont_h) $(gzpath_h) $(gzstate_h) \
$(ialloc_h) $(ichar_h) $(idict_h) $(ifont_h) $(estack_h) \
$(ilevel_h) $(iname_h) $(igstate_h) $(ipacked_h) $(store_h)
# zcharout is used for Type 1 and Type 42 fonts only.
zcharout.$(OBJ): zchar.c $(OP) \
$(gschar_h) $(gxdevice_h) $(gxfont_h) \
$(dstack_h) $(estack_h) $(ichar_h) $(icharout_h) \
$(idict_h) $(ifont_h) $(igstate_h) $(store_h)
zcolor.$(OBJ): zcolor.c $(OP) \
$(gxfixed_h) $(gxmatrix_h) $(gzstate_h) $(gxdevice_h) $(gxcmap_h) \
$(ialloc_h) $(icolor_h) $(estack_h) $(iutil_h) $(igstate_h) $(store_h)
zdevice.$(OBJ): zdevice.c $(OP) \
$(ialloc_h) $(idict_h) $(igstate_h) $(iname_h) $(interp_h) $(iparam_h) $(ivmspace_h) \
$(gsmatrix_h) $(gsstate_h) $(gxdevice_h) $(store_h)
zfont.$(OBJ): zfont.c $(OP) \
$(gsmatrix_h) $(gxdevice_h) $(gxfont_h) $(gxfcache_h) \
$(ialloc_h) $(idict_h) $(igstate_h) $(iname_h) $(isave_h) $(ivmspace_h) \
$(bfont_h) $(store_h)
zfont2.$(OBJ): zfont2.c $(OP) \
$(gsmatrix_h) $(gxdevice_h) $(gschar_h) $(gxfixed_h) $(gxfont_h) \
$(ialloc_h) $(bfont_h) $(idict_h) $(idparam_h) $(ilevel_h) $(iname_h) $(istruct_h) \
$(ipacked_h) $(store_h)
zgstate.$(OBJ): zgstate.c $(OP) \
$(gsmatrix_h) $(ialloc_h) $(idict_h) $(igstate_h) $(istruct_h) $(store_h)
zht.$(OBJ): zht.c $(OP) \
$(gsmatrix_h) $(gsstate_h) $(gsstruct_h) $(gxdevice_h) $(gzht_h) \
$(ialloc_h) $(estack_h) $(igstate_h) $(store_h)
zmatrix.$(OBJ): zmatrix.c $(OP) $(gsmatrix_h) $(igstate_h) $(gscoord_h) $(store_h)
zpaint.$(OBJ): zpaint.c $(OP) \
$(estack_h) $(ialloc_h) $(ifilter_h) $(igstate_h) $(iimage_h) $(ilevel_h) \
$(gscspace_h) $(gsimage_h) $(gsmatrix_h) $(gspaint_h) $(gsstruct_h) \
$(store_h) $(stream_h)
zpath.$(OBJ): zpath.c $(OP) $(math__h) \
$(gsmatrix_h) $(gspath_h) $(igstate_h) $(store_h)
# Define the base PostScript language interpreter.
# This is the subset of PostScript Level 1 required by our PDF reader.
INT1=idebug.$(OBJ) idict.$(OBJ) idparam.$(OBJ) iinit.$(OBJ)
INT2=interp.$(OBJ) iparam.$(OBJ) ireclaim.$(OBJ)
INT3=iscan.$(OBJ) iscannum.$(OBJ) iscantab.$(OBJ) istack.$(OBJ) iutil.$(OBJ)
INT4=$(sfile_impl).$(OBJ) sfilter1.$(OBJ) sstring.$(OBJ) stream.$(OBJ)
Z1=zarith.$(OBJ) zarray.$(OBJ) zcontrol.$(OBJ) zdict.$(OBJ)
Z1OPS=zarith zarray zcontrol zdict
Z2=zfile.$(OBJ) zfileio.$(OBJ) zfilter.$(OBJ) zfname.$(OBJ) zfproc.$(OBJ)
Z2OPS=zfile zfileio zfilter zfproc
Z3=zgeneric.$(OBJ) ziodev.$(OBJ) zmath.$(OBJ) zmisc.$(OBJ) zpacked.$(OBJ)
Z3OPS=zgeneric ziodev zmath zmisc zpacked
Z4=zrelbit.$(OBJ) zstack.$(OBJ) zstring.$(OBJ) zsysvm.$(OBJ)
Z4OPS=zrelbit zstack zstring zsysvm
Z5=ztoken.$(OBJ) ztype.$(OBJ) zusparam.$(OBJ) zvmem.$(OBJ)
Z5OPS=ztoken ztype zusparam zvmem
Z6=zchar.$(OBJ) zcolor.$(OBJ) zdevice.$(OBJ) zfont.$(OBJ) zfont2.$(OBJ)
Z6OPS=zchar zcolor zdevice zfont zfont2
Z7=zgstate.$(OBJ) zht.$(OBJ) zmatrix.$(OBJ) zpaint.$(OBJ) zpath.$(OBJ)
Z7OPS=zgstate zht zmatrix zpaint zpath
# We have to be a little underhanded with *config.$(OBJ) so as to avoid
# circular definitions.
INT_OBJS=imainarg.$(OBJ) imain.$(OBJ) \
$(INT1) $(INT2) $(INT3) $(INT4) \
$(Z1) $(Z2) $(Z3) $(Z4) $(Z5) $(Z6) $(Z7)
INT_CONFIG=$(gconfig).$(OBJ) $(gscdefs).$(OBJ) $(iconfig).$(OBJ) \
iccinit$(COMPILE_INITS).$(OBJ)
INT_ALL=$(INT_OBJS) $(INT_CONFIG)
# We omit libcore.dev, which should be included here, because problems
# with the Unix linker require libcore to appear last in the link list
# when libcore is really a library.
# We omit $(INT_CONFIG) from the dependency list because they have special
# dependency requirements and are added to the link list at the very end.
# zfilter.c shouldn't include the RLE and RLD filters, but we don't want to
# change this now.
psbase.dev: $(INT_MAK) $(ECHOGS_XE) $(INT_OBJS) isupport.dev rld.dev rle.dev
$(SETMOD) psbase imainarg.$(OBJ) imain.$(OBJ)
$(ADDMOD) psbase -obj $(INT_CONFIG)
$(ADDMOD) psbase -obj $(INT1)
$(ADDMOD) psbase -obj $(INT2)
$(ADDMOD) psbase -obj $(INT3)
$(ADDMOD) psbase -obj $(INT4)
$(ADDMOD) psbase -obj $(Z1)
$(ADDMOD) psbase -oper $(Z1OPS)
$(ADDMOD) psbase -obj $(Z2)
$(ADDMOD) psbase -oper $(Z2OPS)
$(ADDMOD) psbase -obj $(Z3)
$(ADDMOD) psbase -oper $(Z3OPS)
$(ADDMOD) psbase -obj $(Z4)
$(ADDMOD) psbase -oper $(Z4OPS)
$(ADDMOD) psbase -obj $(Z5)
$(ADDMOD) psbase -oper $(Z5OPS)
$(ADDMOD) psbase -obj $(Z6)
$(ADDMOD) psbase -oper $(Z6OPS)
$(ADDMOD) psbase -obj $(Z7)
$(ADDMOD) psbase -oper $(Z7OPS)
$(ADDMOD) psbase -iodev stdin stdout stderr lineedit statementedit
$(ADDMOD) psbase -include isupport rld rle
# -------------------------- Feature definitions -------------------------- #
# ---------------- Full Level 1 interpreter ---------------- #
level1.dev: $(INT_MAK) $(ECHOGS_XE) psbase.dev bcp.dev hsb.dev path1.dev type1.dev
$(SETMOD) level1 -include psbase bcp hsb path1 type1
$(ADDMOD) level1 -emulator PostScript PostScriptLevel1
# -------- Level 1 color extensions (CMYK color and colorimage) -------- #
color.dev: $(INT_MAK) $(ECHOGS_XE) cmyklib.dev cmykread.dev
$(SETMOD) color -include cmyklib cmykread
cmykread_=zcolor1.$(OBJ) zht1.$(OBJ)
cmykread.dev: $(INT_MAK) $(ECHOGS_XE) $(cmykread_)
$(SETMOD) cmykread $(cmykread_)
$(ADDMOD) cmykread -oper zcolor1 zht1
zcolor1.$(OBJ): zcolor1.c $(OP) \
$(gscolor1_h) \
$(gxcmap_h) $(gxcspace_h) $(gxdevice_h) $(gxfixed_h) $(gxmatrix_h) \
$(gzstate_h) \
$(ialloc_h) $(icolor_h) $(iimage_h) $(estack_h) $(iutil_h) $(igstate_h) $(store_h)
zht1.$(OBJ): zht1.c $(OP) \
$(gsmatrix_h) $(gsstate_h) $(gsstruct_h) $(gxdevice_h) $(gzht_h) \
$(ialloc_h) $(estack_h) $(igstate_h) $(store_h)
# ---------------- HSB color ---------------- #
hsb_=zhsb.$(OBJ)
hsb.dev: $(INT_MAK) $(ECHOGS_XE) $(hsb_) hsblib.dev
$(SETMOD) hsb $(hsb_)
$(ADDMOD) hsb -include hsblib
$(ADDMOD) hsb -oper zhsb
zhsb.$(OBJ): zhsb.c $(OP) \
$(gshsb_h) $(igstate_h) $(store_h)
# ---- Level 1 path miscellany (arcs, pathbbox, path enumeration) ---- #
path1_=zpath1.$(OBJ)
path1.dev: $(INT_MAK) $(ECHOGS_XE) $(path1_) path1lib.dev
$(SETMOD) path1 $(path1_)
$(ADDMOD) path1 -include path1lib
$(ADDMOD) path1 -oper zpath1
zpath1.$(OBJ): zpath1.c $(OP) \
$(ialloc_h) $(estack_h) $(gspath_h) $(gsstruct_h) $(igstate_h) $(store_h)
# ================ Level-independent PostScript options ================ #
# ---------------- BCP filters ---------------- #
bcp_=sbcp.$(OBJ) zfbcp.$(OBJ)
bcp.dev: $(INT_MAK) $(ECHOGS_XE) $(bcp_)
$(SETMOD) bcp $(bcp_)
$(ADDMOD) bcp -oper zfbcp
sbcp.$(OBJ): sbcp.c $(AK) $(stdio__h) \
$(sfilter_h) $(strimpl_h)
zfbcp.$(OBJ): zfbcp.c $(OP) \
$(gsstruct_h) $(ialloc_h) $(ifilter_h) \
$(sfilter_h) $(stream_h) $(strimpl_h)
# ---------------- Incremental font loading ---------------- #
# (This only works for Type 1 fonts without eexec encryption.)
diskfont.dev: $(INT_MAK) $(ECHOGS_XE)
$(SETMOD) diskfont -ps gs_diskf
# ---------------- Double-precision floats ---------------- #
double_=zdouble.$(OBJ)
double.dev: $(INT_MAK) $(ECHOGS_XE) $(double_)
$(SETMOD) double $(double_)
$(ADDMOD) double -oper zdouble
zdouble.$(OBJ): zdouble.c $(OP) $(ctype__h) $(math__h) $(memory__h) $(string__h) \
$(gxfarith_h) $(store_h)
# ---------------- RasterOp ---------------- #
# This should be a separable feature in the core also....
rasterop.dev: $(INT_MAK) $(ECHOGS_XE) roplib.dev ropread.dev
$(SETMOD) rasterop -include roplib ropread
ropread_=zrop.$(OBJ)
ropread.dev: $(INT_MAK) $(ECHOGS_XE) $(ropread_)
$(SETMOD) ropread $(ropread_)
$(ADDMOD) ropread -oper zrop
zrop.$(OBJ): zrop.c $(OP) $(memory__h) \
$(gsrop_h) $(gxdevice_h) $(idict_h) $(idparam_h) $(igstate_h) $(store_h)
# ---------------- PostScript Type 1 (and Type 4) fonts ---------------- #
type1.dev: $(INT_MAK) $(ECHOGS_XE) psf1lib.dev psf1read.dev
$(SETMOD) type1 -include psf1lib psf1read
psf1read_=seexec.$(OBJ) zchar1.$(OBJ) zcharout.$(OBJ) zfont1.$(OBJ) zmisc1.$(OBJ)
psf1read.dev: $(INT_MAK) $(ECHOGS_XE) $(psf1read_)
$(SETMOD) psf1read $(psf1read_)
$(ADDMOD) psf1read -oper zchar1 zfont1 zmisc1
$(ADDMOD) psf1read -ps gs_type1
seexec.$(OBJ): seexec.c $(AK) $(stdio__h) \
$(gscrypt1_h) $(scanchar_h) $(sfilter_h) $(strimpl_h)
zchar1.$(OBJ): zchar1.c $(OP) \
$(gspaint_h) $(gspath_h) $(gsstruct_h) \
$(gxchar_h) $(gxdevice_h) $(gxfixed_h) $(gxmatrix_h) \
$(gxfont_h) $(gxfont1_h) $(gxtype1_h) $(gzstate_h) \
$(estack_h) $(ialloc_h) $(ichar_h) $(icharout_h) \
$(idict_h) $(ifont_h) $(igstate_h) $(store_h)
zfont1.$(OBJ): zfont1.c $(OP) \
$(gsmatrix_h) $(gxdevice_h) $(gschar_h) \
$(gxfixed_h) $(gxfont_h) $(gxfont1_h) \
$(bfont_h) $(ialloc_h) $(idict_h) $(idparam_h) $(store_h)
zmisc1.$(OBJ): zmisc1.c $(OP) \
$(gscrypt1_h) $(ifilter_h) $(sfilter_h) $(stream_h) $(strimpl_h)
# ---------------- TrueType and PostScript Type 42 fonts ---------------- #
# Native TrueType support
ttfont.dev: $(INT_MAK) $(ECHOGS_XE) type42.dev
$(SETMOD) ttfont -include type42
$(ADDMOD) ttfont -ps gs_mro_e gs_wan_e gs_ttf
# Type 42 (embedded TrueType) support
type42read_=zchar42.$(OBJ) zcharout.$(OBJ) zfont42.$(OBJ)
type42.dev: $(INT_MAK) $(ECHOGS_XE) $(type42read_) ttflib.dev
$(SETMOD) type42 $(type42read_)
$(ADDMOD) type42 -include ttflib
$(ADDMOD) type42 -oper zchar42 zfont42
$(ADDMOD) type42 -ps gs_typ42
zchar42.$(OBJ): zchar42.c $(OP) \
$(gsmatrix_h) $(gspaint_h) $(gspath_h) \
$(gxfixed_h) $(gxchar_h) $(gxfont_h) $(gxfont42_h) \
$(gxistate_h) $(gxpath_h) $(gzstate_h) \
$(dstack_h) $(estack_h) $(ichar_h) $(icharout_h) \
$(ifont_h) $(igstate_h) $(store_h)
zfont42.$(OBJ): zfont42.c $(OP) \
$(gsccode_h) $(gsmatrix_h) $(gxfont_h) $(gxfont42_h) \
$(bfont_h) $(idict_h) $(idparam_h) $(store_h)
# ---------------- Obsolete PPM writing facility ---------------- #
writeppm_=zwppm.$(OBJ)
writeppm.dev: $(INT_MAK) $(ECHOGS_XE) $(writeppm_)
$(SETMOD) writeppm $(writeppm_)
$(ADDMOD) writeppm -oper zwppm
zwppm.$(OBJ): zwppm.c $(OP) $(memory__h) \
$(files_h) $(gscdefs_h) $(gsmatrix_h) $(gxdevice_h) $(gxdevmem_h) \
$(stream_h)
# ======================== Precompilation options ======================== #
# ---------------- Precompiled fonts ---------------- #
# See fonts.txt for more information.
ccfont_h=ccfont.h $(std_h) $(gsmemory_h) $(iref_h) $(ivmspace_h) $(store_h)
CCFONT=$(OP) $(ccfont_h)
# List the fonts we are going to compile.
# Because of intrinsic limitations in `make', we have to list
# the object file names and the font names separately.
# Because of limitations in the DOS shell, we have to break the fonts up
# into lists that will fit on a single line (120 characters).
# The rules for constructing the .c files from the fonts themselves,
# and for compiling the .c files, are in cfonts.mak, not here.
# For example, to compile the Courier fonts, you should invoke
# make -f cfonts.mak Courier_o
# By convention, the names of the 35 standard compiled fonts use '0' for
# the foundry name. This allows users to substitute different foundries
# without having to change this makefile.
ccfonts_ps=gs_ccfnt
ccfonts1_=0agk.$(OBJ) 0agko.$(OBJ) 0agd.$(OBJ) 0agdo.$(OBJ)
ccfonts1=agk agko agd agdo
ccfonts2_=0bkl.$(OBJ) 0bkli.$(OBJ) 0bkd.$(OBJ) 0bkdi.$(OBJ)
ccfonts2=bkl bkli bkd bkdi
ccfonts3_=0crr.$(OBJ) 0cri.$(OBJ) 0crb.$(OBJ) 0crbi.$(OBJ)
ccfonts3=crr cri crb crbi
ccfonts4_=0hvr.$(OBJ) 0hvro.$(OBJ) 0hvb.$(OBJ) 0hvbo.$(OBJ)
ccfonts4=hvr hvro hvb hvbo
ccfonts5_=0hvrrn.$(OBJ) 0hvrorn.$(OBJ) 0hvbrn.$(OBJ) 0hvborn.$(OBJ)
ccfonts5=hvrrn hvrorn hvbrn hvborn
ccfonts6_=0ncr.$(OBJ) 0ncri.$(OBJ) 0ncb.$(OBJ) 0ncbi.$(OBJ)
ccfonts6=ncr ncri ncb ncbi
ccfonts7_=0plr.$(OBJ) 0plri.$(OBJ) 0plb.$(OBJ) 0plbi.$(OBJ)
ccfonts7=plr plri plb plbi
ccfonts8_=0tmr.$(OBJ) 0tmri.$(OBJ) 0tmb.$(OBJ) 0tmbi.$(OBJ)
ccfonts8=tmr tmri tmb tmbi
ccfonts9_=0syr.$(OBJ) 0zcmi.$(OBJ) 0zdr.$(OBJ)
ccfonts9=syr zcmi zdr
# The free distribution includes Bitstream Charter, Utopia, and
# freeware Cyrillic and Kana fonts. We only provide for compiling
# Charter and Utopia.
ccfonts10free_=bchr.$(OBJ) bchri.$(OBJ) bchb.$(OBJ) bchbi.$(OBJ)
ccfonts10free=chr chri chb chbi
ccfonts11free_=putr.$(OBJ) putri.$(OBJ) putb.$(OBJ) putbi.$(OBJ)
ccfonts11free=utr utri utb utbi
# Uncomment the next 2 lines if you want Charter and Utopia compiled in.
#ccfonts10_=$(ccfonts10free_)
#ccfonts10=$(ccfonts10free)
#ccfonts11_=$(ccfonts11free_)
#ccfonts11=$(ccfonts11free)
# Add your own fonts here if desired.
ccfonts12_=
ccfonts12=
ccfonts13_=
ccfonts13=
ccfonts14_=
ccfonts14=
ccfonts15_=
ccfonts15=
# Select either standard or free configuration here.
# By default, we select the standard configuration.
#ccfonts3_=$(ccfonts3free_)
#ccfonts3=$(ccfonts3free)
#ccfonts9_=$(ccfonts9free_)
#ccfonts9=$(ccfonts9free)
ccfonts3_=$(ccfonts3std_)
ccfonts3=$(ccfonts3std)
ccfonts9_=$(ccfonts9std_)
ccfonts9=$(ccfonts9std)
# It's OK for ccfonts_.dev not to be CONFIG-dependent, because it only
# exists during the execution of the following rule.
$(gconfigf_h): $(MAKEFILE) $(INT_MAK) $(GENCONF_XE)
$(SETMOD) ccfonts_ -font $(ccfonts1)
$(ADDMOD) ccfonts_ -font $(ccfonts2)
$(ADDMOD) ccfonts_ -font $(ccfonts3)
$(ADDMOD) ccfonts_ -font $(ccfonts4)
$(ADDMOD) ccfonts_ -font $(ccfonts5)
$(ADDMOD) ccfonts_ -font $(ccfonts6)
$(ADDMOD) ccfonts_ -font $(ccfonts7)
$(ADDMOD) ccfonts_ -font $(ccfonts8)
$(ADDMOD) ccfonts_ -font $(ccfonts9)
$(ADDMOD) ccfonts_ -font $(ccfonts10)
$(ADDMOD) ccfonts_ -font $(ccfonts11)
$(ADDMOD) ccfonts_ -font $(ccfonts12)
$(ADDMOD) ccfonts_ -font $(ccfonts13)
$(ADDMOD) ccfonts_ -font $(ccfonts14)
$(ADDMOD) ccfonts_ -font $(ccfonts15)
$(EXP)genconf ccfonts_.dev -f $(gconfigf_h)
# We separate icfontab.dev from ccfonts.dev so that a customer can put
# compiled fonts into a separate shared library.
icfontab=icfontab$(CONFIG)
# Define ccfont_table separately, so it can be set from the command line
# to select an alternate compiled font table.
ccfont_table=$(icfontab)
$(icfontab).dev: $(MAKEFILE) $(INT_MAK) $(ECHOGS_XE) $(icfontab).$(OBJ) \
$(ccfonts1_) $(ccfonts2_) $(ccfonts3_) $(ccfonts4_) $(ccfonts5_) \
$(ccfonts6_) $(ccfonts7_) $(ccfonts8_) $(ccfonts9_) $(ccfonts10_) \
$(ccfonts11_) $(ccfonts12_) $(ccfonts13_) $(ccfonts14_) $(ccfonts15_)
$(SETMOD) $(icfontab) -obj $(icfontab).$(OBJ)
$(ADDMOD) $(icfontab) -obj $(ccfonts1_)
$(ADDMOD) $(icfontab) -obj $(ccfonts2_)
$(ADDMOD) $(icfontab) -obj $(ccfonts3_)
$(ADDMOD) $(icfontab) -obj $(ccfonts4_)
$(ADDMOD) $(icfontab) -obj $(ccfonts5_)
$(ADDMOD) $(icfontab) -obj $(ccfonts6_)
$(ADDMOD) $(icfontab) -obj $(ccfonts7_)
$(ADDMOD) $(icfontab) -obj $(ccfonts8_)
$(ADDMOD) $(icfontab) -obj $(ccfonts9_)
$(ADDMOD) $(icfontab) -obj $(ccfonts10_)
$(ADDMOD) $(icfontab) -obj $(ccfonts11_)
$(ADDMOD) $(icfontab) -obj $(ccfonts12_)
$(ADDMOD) $(icfontab) -obj $(ccfonts13_)
$(ADDMOD) $(icfontab) -obj $(ccfonts14_)
$(ADDMOD) $(icfontab) -obj $(ccfonts15_)
$(icfontab).$(OBJ): icfontab.c $(AK) $(ccfont_h) $(gconfigf_h)
$(CP_) $(gconfigf_h) gconfigf.h
$(CCCF) $(srcdir)/icfontab.c
# Strictly speaking, ccfonts shouldn't need to include type1,
# since one could choose to precompile only Type 0 fonts,
# but getting this exactly right would be too much work.
ccfonts=ccfonts$(CONFIG)
$(ccfonts).dev: $(MAKEFILE) $(INT_MAK) type1.dev iccfont.$(OBJ) \
$(ccfont_table).dev
$(SETMOD) $(ccfonts) -include type1
$(ADDMOD) $(ccfonts) -include $(ccfont_table)
$(ADDMOD) $(ccfonts) -obj iccfont.$(OBJ)
$(ADDMOD) $(ccfonts) -oper ccfonts
$(ADDMOD) $(ccfonts) -ps $(ccfonts_ps)
iccfont.$(OBJ): iccfont.c $(GH) \
$(gsstruct_h) $(ccfont_h) $(errors_h) \
$(ialloc_h) $(idict_h) $(ifont_h) $(iname_h) $(isave_h) $(iutil_h) \
$(oper_h) $(ostack_h) $(store_h) $(stream_h) $(strimpl_h) $(sfilter_h) $(iscan_h)
$(CCCF) $(srcdir)/iccfont.c
# ---------------- Compiled initialization code ---------------- #
# We select either iccinit0 or iccinit1 depending on COMPILE_INITS.
iccinit0.$(OBJ): iccinit0.c $(stdpre_h)
$(CCCF) -I. -I$(srcdir) $(srcdir)/iccinit0.c
iccinit1.$(OBJ): gs_init.$(OBJ)
$(CP_) gs_init.$(OBJ) iccinit1.$(OBJ)
# All the gs_*.ps files should be prerequisites of gs_init.c,
# but we don't have any convenient list of them.
gs_init.c: $(GS_INIT) $(GENINIT_XE) $(gconfig_h)
cp $(srcdir)/gs_*.ps .
$(EXP)geninit $(GS_INIT) $(gconfig_h) -c gs_init.c
gs_init.$(OBJ): gs_init.c $(stdpre_h)
$(CCCF) -I. -I$(srcdir) -O0 gs_init.c
# ======================== PostScript Level 2 ======================== #
###### Include files
iutil2_h=iutil2.h
### In addition to the true Level 2 configuration, we define a 'minimal'
### Level 2 that can be used with -dDEBUG in the 16-bit Windows environment.
### This also may require trimming down the sizes of the stacks in interp.c.
lev2min.dev: $(INT_MAK) $(ECHOGS_XE) \
psbase.dev devctrl.dev color.dev \
dps2lib.dev dps2read.dev fdecode.dev path1.dev type1.dev \
psl2lib.dev psl2read.dev
$(SETMOD) lev2min -include psbase devctrl color
$(ADDMOD) lev2min -include dps2lib dps2read fdecode path1 type1
$(ADDMOD) lev2min -include psl2lib psl2read
$(ADDMOD) lev2min -emulator PostScript PostScriptLevel1 PostScriptLevel2
level2.dev: $(INT_MAK) $(ECHOGS_XE) \
cie.dev compfont.dev dct.dev devctrl.dev dpsand2.dev filter.dev \
level1.dev pattern.dev psl2lib.dev psl2read.dev sepr.dev type42.dev \
xfilter.dev
$(SETMOD) level2 -include cie compfont dct devctrl dpsand2 filter
$(ADDMOD) level2 -include level1 pattern psl2lib psl2read sepr xfilter
$(ADDMOD) level2 -emulator PostScript PostScriptLevel2
psl2read1_=iutil2.$(OBJ) zcolor2.$(OBJ) zcsindex.$(OBJ)
psl2read2_=zht2.$(OBJ) zimage2.$(OBJ) zmisc2.$(OBJ)
psl2read_=$(psl2read1_) $(psl2read2_)
# Note that zmisc2 includes both Level 1 and Level 2 operators.
psl2read.dev: $(INT_MAK) $(ECHOGS_XE) $(psl2read_)
$(SETMOD) psl2read $(psl2read1_)
$(ADDMOD) psl2read -obj $(psl2read2_)
$(ADDMOD) psl2read -oper zmisc2
$(ADDMOD) psl2read -oper zcolor2_l2 zcsindex_l2
$(ADDMOD) psl2read -oper zht2_l2 zimage2_l2
$(ADDMOD) psl2read -ps gs_lev2 gs_res
iutil2.$(OBJ): iutil2.c $(GXERR) $(memory__h) \
$(gsparam_h) $(gsutil_h) \
$(opcheck_h) $(idict_h) $(imemory_h) $(iutil_h) $(iutil2_h)
zcolor2.$(OBJ): zcolor2.c $(OP) \
$(gscolor_h) $(gsmatrix_h) $(gsstruct_h) \
$(gxcolor2_h) $(gxcspace_h) $(gxdevice_h) $(gxdevmem_h) $(gxfixed_h) $(gxpcolor_h) \
$(estack_h) $(ialloc_h) $(idict_h) $(idparam_h) $(igstate_h) $(istruct_h) \
$(store_h)
zcsindex.$(OBJ): zcsindex.c $(OP) $(memory__h) \
$(gscolor_h) $(gsstruct_h) $(gxfixed_h) $(gxcolor2_h) $(gxcspace_h) $(gsmatrix_h) \
$(ialloc_h) $(icsmap_h) $(estack_h) $(igstate_h) $(ivmspace_h) $(store_h)
zht2.$(OBJ): zht2.c $(OP) \
$(gsstruct_h) $(gxdevice_h) $(gzht_h) \
$(estack_h) $(ialloc_h) $(icolor_h) $(idict_h) $(idparam_h) $(igstate_h) \
$(store_h)
zimage2.$(OBJ): zimage2.c $(OP) $(math__h) \
$(gscolor_h) $(gscolor2_h) $(gscspace_h) $(gsimage_h) $(gsmatrix_h) \
$(idict_h) $(idparam_h) $(iimage_h) $(ilevel_h) $(igstate_h)
zmisc2.$(OBJ): zmisc2.c $(OP) \
$(idict_h) $(idparam_h) $(iparam_h) $(dstack_h) $(estack_h) \
$(ilevel_h) $(iname_h) $(iutil2_h) $(ivmspace_h) $(store_h)
# ---------------- Device control ---------------- #
# This is a catch-all for setpagedevice and IODevices.
devctrl_=zdevice2.$(OBJ) ziodev2.$(OBJ) zmedia2.$(OBJ) zdevcal.$(OBJ)
devctrl.dev: $(INT_MAK) $(ECHOGS_XE) $(devctrl_)
$(SETMOD) devctrl $(devctrl_)
$(ADDMOD) devctrl -oper zdevice2_l2 ziodev2_l2 zmedia2_l2
$(ADDMOD) devctrl -iodev null ram calendar
$(ADDMOD) devctrl -ps gs_setpd
zdevice2.$(OBJ): zdevice2.c $(OP) $(math__h) \
$(dstack_h) $(estack_h) $(idict_h) $(idparam_h) $(igstate_h) $(iname_h) $(store_h) \
$(gxdevice_h) $(gsstate_h)
ziodev2.$(OBJ): ziodev2.c $(OP) \
$(gxiodev_h) $(stream_h) $(files_h) $(iparam_h) $(iutil2_h) $(store_h)
zmedia2.$(OBJ): zmedia2.c $(OP) $(math__h) $(memory__h) \
$(gsmatrix_h) $(idict_h) $(idparam_h) $(iname_h) $(store_h)
zdevcal.$(OBJ): zdevcal.c $(GH) $(time__h) \
$(gxiodev_h) $(iparam_h) $(istack_h)
# ---------------- Filters other than the ones in sfilter.c ---------------- #
# Standard Level 2 decoding filters only. The PDF configuration uses this.
fdecode_=sfilter2.$(OBJ) zfdecode.$(OBJ)
fdecode.dev: $(INT_MAK) $(ECHOGS_XE) $(fdecode_) cfd.dev lzwd.dev pdiff.dev pngp.dev rld.dev
$(SETMOD) fdecode $(fdecode_)
$(ADDMOD) fdecode -include cfd lzwd pdiff pngp rld
$(ADDMOD) fdecode -oper zfdecode
sfilter2.$(OBJ): sfilter2.c $(AK) $(stdio__h)\
$(sa85x_h) $(scanchar_h) $(sbtx_h) $(sfilter_h) $(strimpl_h)
zfdecode.$(OBJ): zfdecode.c $(OP) $(memory__h) \
$(gsstruct_h) $(ialloc_h) $(idict_h) $(idparam_h) $(ifilter_h) \
$(sa85x_h) $(scf_h) $(scfx_h) $(sfilter_h) $(slzwx_h) $(spdiffx_h) $(spngpx_h) \
$(store_h) $(strimpl_h)
# Complete Level 2 filter capability.
filter_=zfilter2.$(OBJ)
filter.dev: $(INT_MAK) $(ECHOGS_XE) fdecode.dev $(filter_) cfe.dev lzwe.dev rle.dev
$(SETMOD) filter -include fdecode
$(ADDMOD) filter -obj $(filter_)
$(ADDMOD) filter -include cfe lzwe rle
$(ADDMOD) filter -oper zfilter2
zfilter2.$(OBJ): zfilter2.c $(OP) \
$(gsstruct_h) $(ialloc_h) $(idict_h) $(idparam_h) $(ifilter_h) $(store_h) \
$(sfilter_h) $(scfx_h) $(slzwx_h) $(spdiffx_h) $(spngpx_h) $(strimpl_h)
# Extensions beyond Level 2 standard.
xfilter_=sbhc.$(OBJ) sbwbs.$(OBJ) shcgen.$(OBJ) smtf.$(OBJ) \
zfilterx.$(OBJ)
xfilter.dev: $(INT_MAK) $(ECHOGS_XE) $(xfilter_) pcxd.dev pngp.dev
$(SETMOD) xfilter $(xfilter_)
$(ADDMOD) xfilter -include pcxd
$(ADDMOD) xfilter -oper zfilterx
sbhc.$(OBJ): sbhc.c $(AK) $(stdio__h) \
$(gdebug_h) $(sbhc_h) $(shcgen_h) $(strimpl_h)
sbwbs.$(OBJ): sbwbs.c $(AK) $(stdio__h) $(memory__h) \
$(gdebug_h) $(sbwbs_h) $(sfilter_h) $(strimpl_h)
shcgen.$(OBJ): shcgen.c $(AK) $(stdio__h) \
$(gdebug_h) $(gserror_h) $(gserrors_h) \
$(scommon_h) $(shc_h) $(shcgen_h)
smtf.$(OBJ): smtf.c $(AK) $(stdio__h) \
$(smtf_h) $(strimpl_h)
zfilterx.$(OBJ): zfilterx.c $(OP) \
$(gsstruct_h) $(ialloc_h) $(idict_h) $(idparam_h) $(ifilter_h) \
$(store_h) $(sfilter_h) $(sbhc_h) $(sbtx_h) $(sbwbs_h) $(shcgen_h) \
$(smtf_h) $(strimpl_h)
# ---------------- Binary tokens ---------------- #
btoken_=iscanbin.$(OBJ) zbseq.$(OBJ)
btoken.dev: $(INT_MAK) $(ECHOGS_XE) $(btoken_)
$(SETMOD) btoken $(btoken_)
$(ADDMOD) btoken -oper zbseq_l2
$(ADDMOD) btoken -ps gs_btokn
bseq_h=bseq.h
btoken_h=btoken.h
iscanbin.$(OBJ): iscanbin.c $(GH) $(math__h) $(errors_h) \
$(gsutil_h) $(ialloc_h) $(ibnum_h) $(idict_h) $(iname_h) \
$(iscan_h) $(iutil_h) $(ivmspace_h) \
$(bseq_h) $(btoken_h) $(dstack_h) $(ostack_h) \
$(sfilter_h) $(store_h) $(stream_h) $(strimpl_h)
zbseq.$(OBJ): zbseq.c $(OP) \
$(ialloc_h) $(idict_h) $(isave_h) $(sfilter_h) $(store_h) $(stream_h) $(strimpl_h) \
$(iname_h) $(ibnum_h) $(btoken_h) $(bseq_h)
# ---------------- User paths & insideness testing ---------------- #
upath_=zupath.$(OBJ) ibnum.$(OBJ)
upath.dev: $(INT_MAK) $(ECHOGS_XE) $(upath_)
$(SETMOD) upath $(upath_)
$(ADDMOD) upath -oper zupath_l2
zupath.$(OBJ): zupath.c $(OP) \
$(idict_h) $(dstack_h) $(iutil_h) $(igstate_h) $(store_h) $(stream_h) $(ibnum_h) \
$(gscoord_h) $(gsmatrix_h) $(gspaint_h) $(gspath_h) $(gsstate_h) \
$(gxfixed_h) $(gxdevice_h) $(gzpath_h) $(gzstate_h)
# -------- Additions common to Display PostScript and Level 2 -------- #
dpsand2.dev: $(INT_MAK) $(ECHOGS_XE) btoken.dev color.dev upath.dev dps2lib.dev dps2read.dev
$(SETMOD) dpsand2 -include btoken color upath dps2lib dps2read
dps2read_=ibnum.$(OBJ) zchar2.$(OBJ) zdps1.$(OBJ) zvmem2.$(OBJ)
# Note that zvmem2 includes both Level 1 and Level 2 operators.
dps2read.dev: $(INT_MAK) $(ECHOGS_XE) $(dps2read_)
$(SETMOD) dps2read $(dps2read_)
$(ADDMOD) dps2read -oper zvmem2
$(ADDMOD) dps2read -oper ireclaim_l2 zchar2_l2 zdps1_l2
$(ADDMOD) dps2read -ps gs_dps1
ibnum.$(OBJ): ibnum.c $(GH) $(math__h) \
$(errors_h) $(stream_h) $(ibnum_h) $(imemory_h) $(iutil_h)
zchar2.$(OBJ): zchar2.c $(OP) \
$(gschar_h) $(gsmatrix_h) $(gspath_h) $(gsstruct_h) $(gxfixed_h) $(gxfont_h) \
$(ialloc_h) $(ichar_h) $(estack_h) $(ifont_h) $(iname_h) $(igstate_h) \
$(store_h) $(stream_h) $(ibnum_h)
zdps1.$(OBJ): zdps1.c $(OP) \
$(gsmatrix_h) $(gspath_h) $(gspath2_h) $(gsstate_h) \
$(ialloc_h) $(ivmspace_h) $(igstate_h) $(store_h) $(stream_h) $(ibnum_h)
zvmem2.$(OBJ): zvmem2.c $(OP) \
$(estack_h) $(ialloc_h) $(ivmspace_h) $(store_h)
# ---------------- Display PostScript ---------------- #
# We should include zcontext, but it isn't in good enough shape yet:
# $(ADDMOD) dps -oper zcontext_l2
dps_=
dps.dev: $(INT_MAK) $(ECHOGS_XE) dpsand2.dev $(dps_)
$(SETMOD) dps -include dpsand2
$(ADDMOD) dps -obj $(dps_)
zcontext.$(OBJ): zcontext.c $(OP) \
$(gsstruct_h) $(gsutil_h) \
$(idict_h) $(istruct_h) $(dstack_h) $(estack_h) $(igstate_h) $(store_h)
# -------- Composite (PostScript Type 0) font support -------- #
compfont.dev: $(INT_MAK) $(ECHOGS_XE) psf0lib.dev psf0read.dev
$(SETMOD) compfont -include psf0lib psf0read
psf0read_=zchar2.$(OBJ) zfont0.$(OBJ)
psf0read.dev: $(INT_MAK) $(ECHOGS_XE) $(psf0read_)
$(SETMOD) psf0read $(psf0read_)
$(ADDMOD) psf0read -oper zfont0 zchar2
zfont0.$(OBJ): zfont0.c $(OP) \
$(gsmatrix_h) $(gsstruct_h) $(gxdevice_h) $(gxfont_h) $(gxfont0_h) \
$(ialloc_h) $(bfont_h) $(idict_h) $(igstate_h) $(store_h)
# ---------------- CID/CMap font support ---------------- #
#**************** NOT REAL YET. DON'T USE. ****************#
cidfont.dev: $(INT_MAK) $(ECHOGS_XE) compfont.dev psf1read.dev
$(SETMOD) cidfont -include compfont psf1read
$(ADDMOD) cidfont -ps gs_cidfn gs_cmap
# ---------------- CIE color ---------------- #
cieread_=zcie.$(OBJ) zcrd.$(OBJ)
cie.dev: $(INT_MAK) $(ECHOGS_XE) $(cieread_) cielib.dev
$(SETMOD) cie $(cieread_)
$(ADDMOD) cie -oper zcie_l2 zcrd_l2
$(ADDMOD) cie -include cielib
icie_h=icie.h
zcie.$(OBJ): zcie.c $(OP) $(math__h) $(memory__h) \
$(gscolor2_h) $(gscie_h) $(gsstruct_h) $(gxcspace_h) \
$(ialloc_h) $(icie_h) $(idict_h) $(idparam_h) $(estack_h) \
$(isave_h) $(igstate_h) $(ivmspace_h) $(store_h)
zcrd.$(OBJ): zcrd.c $(OP) $(math__h) \
$(gscspace_h) $(gscolor2_h) $(gscie_h) $(gsstruct_h) \
$(ialloc_h) $(icie_h) $(idict_h) $(idparam_h) $(estack_h) \
$(isave_h) $(igstate_h) $(ivmspace_h) $(store_h)
# ---------------- Pattern color ---------------- #
pattern.dev: $(INT_MAK) $(ECHOGS_XE) patlib.dev patread.dev
$(SETMOD) pattern -include patlib patread
patread_=zpcolor.$(OBJ)
patread.dev: $(INT_MAK) $(ECHOGS_XE) $(patread_)
$(SETMOD) patread $(patread_)
$(ADDMOD) patread -oper zpcolor_l2
zpcolor.$(OBJ): zpcolor.c $(OP) \
$(gscolor_h) $(gsmatrix_h) $(gsstruct_h) \
$(gxcolor2_h) $(gxcspace_h) $(gxdevice_h) $(gxdevmem_h) $(gxfixed_h) $(gxpcolor_h) \
$(estack_h) $(ialloc_h) $(idict_h) $(idparam_h) $(igstate_h) $(istruct_h) \
$(store_h)
# ---------------- Separation color ---------------- #
seprread_=zcssepr.$(OBJ)
sepr.dev: $(INT_MAK) $(ECHOGS_XE) $(seprread_) seprlib.dev
$(SETMOD) sepr $(seprread_)
$(ADDMOD) sepr -oper zcssepr_l2
$(ADDMOD) sepr -include seprlib
zcssepr.$(OBJ): zcssepr.c $(OP) \
$(gscolor_h) $(gsmatrix_h) $(gsstruct_h) \
$(gxcolor2_h) $(gxcspace_h) $(gxfixed_h) \
$(ialloc_h) $(icsmap_h) $(estack_h) $(igstate_h) $(ivmspace_h) $(store_h)
# ---------------- DCT filters ---------------- #
# The definitions for jpeg*.dev are in jpeg.mak.
dct.dev: $(INT_MAK) $(ECHOGS_XE) dcte.dev dctd.dev
$(SETMOD) dct -include dcte dctd
# Common code
dctc_=sdctc.$(OBJ) sjpegc.$(OBJ) zfdctc.$(OBJ)
sdctc.$(OBJ): sdctc.c $(AK) $(stdio__h) \
$(sdct_h) $(strimpl_h) \
jerror.h jpeglib.h
sjpegc.$(OBJ): sjpegc.c $(AK) $(stdio__h) $(gx_h)\
$(gserrors_h) $(sjpeg_h) $(sdct_h) $(strimpl_h) \
jerror.h jpeglib.h
zfdctc.$(OBJ): zfdctc.c $(GH) $(errors_h) $(opcheck_h) \
$(idict_h) $(idparam_h) $(imemory_h) \
$(ipacked_h) $(sdct_h) $(sjpeg_h) $(strimpl_h) \
jpeglib.h
# Encoding (compression)
dcte_=$(dctc_) sdcte.$(OBJ) sjpege.$(OBJ) zfdcte.$(OBJ)
dcte.dev: $(INT_MAK) $(ECHOGS_XE) jpege.dev $(dcte_)
$(SETMOD) dcte -include jpege
$(ADDMOD) dcte -obj $(dcte_)
$(ADDMOD) dcte -oper zfdcte
sdcte.$(OBJ): sdcte.c $(AK) $(memory__h) $(stdio__h) $(gdebug_h)\
$(sdct_h) $(sjpeg_h) $(strimpl_h) \
jerror.h jpeglib.h
sjpege.$(OBJ): sjpege.c $(AK) $(stdio__h) $(gx_h)\
$(gserrors_h) $(sjpeg_h) $(sdct_h) $(strimpl_h) \
jerror.h jpeglib.h
zfdcte.$(OBJ): zfdcte.c $(OP) \
$(idict_h) $(idparam_h) $(ifilter_h) $(sdct_h) $(sjpeg_h) $(strimpl_h) \
jpeglib.h
# Decoding (decompression)
dctd_=$(dctc_) sdctd.$(OBJ) sjpegd.$(OBJ) zfdctd.$(OBJ)
dctd.dev: $(INT_MAK) $(ECHOGS_XE) jpegd.dev $(dctd_)
$(SETMOD) dctd -include jpegd
$(ADDMOD) dctd -obj $(dctd_)
$(ADDMOD) dctd -oper zfdctd
sdctd.$(OBJ): sdctd.c $(AK) $(memory__h) $(stdio__h) $(gdebug_h)\
$(sdct_h) $(sjpeg_h) $(strimpl_h) \
jerror.h jpeglib.h
sjpegd.$(OBJ): sjpegd.c $(AK) $(stdio__h) $(gx_h)\
$(gserrors_h) $(sjpeg_h) $(sdct_h) $(strimpl_h) \
jerror.h jpeglib.h
zfdctd.$(OBJ): zfdctd.c $(OP) \
$(sdct_h) $(sjpeg_h) $(strimpl_h) \
jpeglib.h
# ---------------- zlib/Flate filters ---------------- #
fzlib.dev: $(INT_MAK) $(ECHOGS_XE) zfzlib.$(OBJ) szlibe.dev szlibd.dev
$(SETMOD) fzlib -include szlibe szlibd
$(ADDMOD) fzlib -obj zfzlib.$(OBJ)
$(ADDMOD) fzlib -oper zfzlib
zfzlib.$(OBJ): zfzlib.c $(OP) \
$(errors_h) $(idict_h) $(ifilter_h) \
$(spdiffx_h) $(spngpx_h) $(strimpl_h) $(szlibx_h)
$(CCC) -I. -I$(ZSRCDIR) $(srcdir)/zfzlib.c
# ================================ PDF ================================ #
# We need most of the Level 2 interpreter to do PDF, but not all of it.
# In fact, we don't even need all of a Level 1 interpreter.
# Because of the way the PDF encodings are defined, they must get loaded
# before we install the Level 2 resource machinery.
# On the other hand, the PDF .ps files must get loaded after
# level2dict is defined.
pdfmin.dev: $(INT_MAK) $(ECHOGS_XE) \
psbase.dev color.dev dps2lib.dev dps2read.dev \
fdecode.dev type1.dev pdffonts.dev psl2lib.dev psl2read.dev pdfread.dev
$(SETMOD) pdfmin -include psbase color dps2lib dps2read
$(ADDMOD) pdfmin -include fdecode type1
$(ADDMOD) pdfmin -include pdffonts psl2lib psl2read pdfread
$(ADDMOD) pdfmin -emulator PDF
pdf.dev: $(INT_MAK) $(ECHOGS_XE) \
pdfmin.dev cie.dev dctd.dev
$(SETMOD) pdf -include pdfmin cie dctd
# Reader only
pdffonts.dev: $(INT_MAK) $(ECHOGS_XE) \
gs_mex_e.ps gs_mro_e.ps gs_pdf_e.ps gs_wan_e.ps
$(SETMOD) pdffonts -ps gs_mex_e gs_mro_e gs_pdf_e gs_wan_e
# pdf_2ps must be the last .ps file loaded.
pdfread.dev: $(INT_MAK) $(ECHOGS_XE) fzlib.dev
$(SETMOD) pdfread -include fzlib
$(ADDMOD) pdfread -ps gs_pdf gs_l2img
$(ADDMOD) pdfread -ps pdf_base pdf_draw pdf_font pdf_main pdf_sec
$(ADDMOD) pdfread -ps pdf_2ps
# Writer
pdfwrite1_=gdevpdf.$(OBJ)
pdfwrite2_=gdevpdfi.$(OBJ) gdevpdfm.$(OBJ) gdevpdfp.$(OBJ) gdevpdft.$(OBJ)
pdfwrite3_=gsflip.$(OBJ) sfilter2.$(OBJ) sstring.$(OBJ)
pdfwrite_=$(pdfwrite1_) $(pdfwrite2_) $(pdfwrite3_)
pdfwrite.dev: $(INT_MAK) $(ECHOGS_XE) $(pdfwrite_) gs_pdfwr.ps \
cfe.dev dcte.dev lzwe.dev rle.dev
$(SETDEV) pdfwrite $(pdfwrite1_)
$(ADDMOD) pdfwrite $(pdfwrite2_)
$(ADDMOD) pdfwrite $(pdfwrite3_)
$(ADDMOD) pdfwrite -ps gs_pdfwr
$(ADDMOD) pdfwrite -include cfe dcte lzwe rle
gdevpdfx_h=gdevpdfx.h $(gsparam_h) $(gxdevice_h) $(gxline_h) $(scommon_h)
gdevpdf.$(OBJ): gdevpdf.c $(math__h) $(string__h) $(time__h) $(gp_h) \
$(gdevpdfx_h) $(gscdefs_h) $(gserrors_h) \
$(gx_h) $(gxdevice_h) $(gxfixed_h) $(gxistate_h) $(gxpaint_h) \
$(gzcpath_h) $(gzpath_h) $(scfx_h) $(strimpl_h)
gdevpdfi.$(OBJ): gdevpdfi.c $(memory__h) $(gx_h) \
$(gdevpdfx_h) $(gserrors_h) $(gsflip_h) $(gxcspace_h) $(gxistate_h) \
$(sa85x_h) $(scfx_h) $(srlx_h) $(stream_h) $(strimpl_h)
gdevpdfm.$(OBJ): gdevpdfm.c $(memory__h) $(string__h) $(gx_h) \
$(gdevpdfx_h) $(gserrors_h) $(gsutil_h)
gdevpdfp.$(OBJ): gdevpdfp.c $(string__h) $(gx_h) $(gp_h) \
$(gdevpdfx_h) $(gserrors_h) $(gsutil_h) \
$(scfx_h) $(slzwx_h) $(srlx_h) $(strimpl_h)
gdevpdft.$(OBJ): gdevpdft.c $(string__h) $(gx_h) \
$(gdevpdfx_h) $(gserrors_h) $(gsutil_h)
# ============================= Main program ============================== #
gs.$(OBJ): gs.c $(GH) \
$(imain_h) $(imainarg_h) $(iminst_h)
imainarg.$(OBJ): imainarg.c $(GH) $(ctype__h) $(memory__h) $(string__h) \
$(gp_h) \
$(gscdefs_h) $(gsdevice_h) $(gsmdebug_h) $(gxdevice_h) $(gxdevmem_h) \
$(errors_h) $(estack_h) $(files_h) \
$(ialloc_h) $(imain_h) $(imainarg_h) $(iminst_h) \
$(iname_h) $(interp_h) $(iscan_h) $(iutil_h) $(ivmspace_h) \
$(ostack_h) $(sfilter_h) $(store_h) $(stream_h) $(strimpl_h)
imain.$(OBJ): imain.c $(GH) \
$(gp_h) $(gslib_h) $(gsmatrix_h) $(gsutil_h) $(gxdevice_h) \
$(dstack_h) $(errors_h) $(estack_h) $(files_h) \
$(ialloc_h) $(idebug_h) $(idict_h) $(iname_h) $(interp_h) \
$(isave_h) $(iscan_h) $(ivmspace_h) \
$(main_h) $(oper_h) $(ostack_h) $(sfilter_h) $(store_h) $(strimpl_h)
interp.$(OBJ): interp.c $(GH) $(memory__h) $(string__h) \
$(dstack_h) $(errors_h) $(estack_h) $(files_h) \
$(ialloc_h) $(iastruct_h) $(inamedef_h) $(idict_h) $(interp_h) $(ipacked_h) \
$(iscan_h) $(isave_h) $(istack_h) $(iutil_h) $(ivmspace_h) \
$(oper_h) $(ostack_h) $(sfilter_h) $(store_h) $(stream_h) $(strimpl_h)
$(CCINT) -I. $(srcdir)/interp.c
ireclaim.$(OBJ): ireclaim.c $(GH) \
$(errors_h) $(gsstruct_h) $(iastate_h) $(opdef_h) $(store_h) \
$(dstack_h) $(estack_h) $(ostack_h)